import request from '../request';

/**
 * 运维工单列表
 * @param {Number} status 状态 -1 全部、1待处理、2处理中、3待确认、4已完成、5已取消
 * @param {Number} current 当前页
 * @param {Number} limit 每页信息条数
 */
export function selectOperateList(status, current, limit = 15) {
	return request({
		url: '/vilion/operate/selectOperateList',
		method: 'GET',
		data: {
			status,
			current,
			limit
		}
	}).then(res => res.data);
}

/**
 * 添加运维工单
 * @param {Object} data 请求数据
 */
export function addOperate(data) {
	return request({
		url: '/vilion/operate/addOperate',
		method: 'POST',
		data: data
	}).then(res => res.data);
}

/**
 * 取消运维工单
 * @param {String} operateId 工单标识
 */
export function cancelOperate(operateId) {
	return request({
		url: `/vilion/operate/cancelOperate`,
		method: 'PUT',
		data: {
			operateId
		}
	}).then(res => res.data);
}

/**
 * 确认运维工单
 * @param {String} operateId 工单标识
 */
export function confirmOperate(operateId) {
	return request({
		url: `/vilion/operate/confirmOperate`,
		method: 'PUT',
		data: {
			operateId
		}
	}).then(res => res.data);
}

/**
 * 处理运维工单
 * @param {String} operateId 工单标识
 */
export function dealOperate(operateId) {
	return request({
		url: '/vilion/operate/dealOperate',
		method: 'PUT',
		data: {
			operateId
		}
	}).then(res => res.data);
}

/**
 * 运维工单详情
 * @param {String} operateId 工单标识
 */
export function selectOperate(operateId) {
	return request({
		url: '/vilion/operate/selectOperate',
		method: 'GET',
		data: {
			operateId
		}
	}).then(res => res.data);
}

/**
 * 运维信息详情
 * @param {String} operateId 工单标识
 */
export function selectOperateInfo(operateId) {
	return request({
		url: '/vilion/operate/selectOperateInfo',
		method: 'GET',
		data: {
			operateId
		}
	}).then(res => res.data);
}

/**
 * 运维流程
 * @param {String} operateId 工单标识
 */
export function selectOperateRecords(operateId) {
	return request({
		url: '/vilion/operate/selectOperateRecords',
		method: 'GET',
		data: {
			operateId
		}
	}).then(res => res.data || []);
}

/**
 * 添加运维工单-站点选择
 * @param {String} operateId 工单标识
 */
export function selectSiteNameList() {
	return request({
		url: '/vilion/operate/selectSiteNameList',
		method: 'GET',
	}).then(res => res.data);
}